// Generated from /Users/vonchange/work/waterflow/waterflow/parser-mermaid/src/main/java/com/vonchange/water/parser/define/MermaidFlow.g4 by ANTLR 4.13.1
package com.vonchange.water.parser.antlr;
import org.antlr.v4.runtime.tree.ParseTreeVisitor;

/**
 * This interface defines a complete generic visitor for a parse tree produced
 * by {@link MermaidFlowParser}.
 *
 * @param <T> The return type of the visit operation. Use {@link Void} for
 * operations with no return type.
 */
public interface MermaidFlowVisitor<T> extends ParseTreeVisitor<T> {
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#row}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRow(MermaidFlowParser.RowContext ctx);
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#rowDef}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRowDef(MermaidFlowParser.RowDefContext ctx);
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#nodes}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitNodes(MermaidFlowParser.NodesContext ctx);
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#node}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitNode(MermaidFlowParser.NodeContext ctx);
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#nameDef}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitNameDef(MermaidFlowParser.NameDefContext ctx);
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#idDef}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIdDef(MermaidFlowParser.IdDefContext ctx);
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#class}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitClass(MermaidFlowParser.ClassContext ctx);
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#id}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitId(MermaidFlowParser.IdContext ctx);
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#name}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitName(MermaidFlowParser.NameContext ctx);
	/**
	 * Visit a parse tree produced by {@link MermaidFlowParser#arrow}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitArrow(MermaidFlowParser.ArrowContext ctx);
}